import '../index.dart';

class FontSizePage extends StatelessWidget {
  const FontSizePage({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    var color = Theme.of(context).primaryColor;
    var textScalingModel = Provider.of<TextScalingModel>(context);
    var s = S.of(context);
    Widget _buildFontSizeItem(String lan, value) {
      return ListTile(
        title: Text(
          lan,
          // 对APP当前语言进行高亮显示
          style: TextStyle(
              color: textScalingModel.textScaling == value ? color : null),
        ),
        trailing: textScalingModel.textScaling == value
            ? Icon(Icons.done, color: color)
            : null,
        onTap: () {
          // 此行代码会通知MaterialApp重新build
          textScalingModel.textScaling = value;
        },
      );
    }

    return GlobalStyle(
      child: BackgroundStyleWidget(
        child: Scaffold(
          appBar: AppBar(
            title: Text(
              s.settingsTextScaling,
            ),
            centerTitle: true,
          ),
          body: ListView(
            children: <Widget>[
              _buildFontSizeItem(
                  s.settingsSystemDefault, systemTextScaleFactorOption),
              _buildFontSizeItem(s.settingsTextScalingSmall, 0.8),
              _buildFontSizeItem(s.settingsTextScalingNormal, 1.0),
              _buildFontSizeItem(s.settingsTextScalingLarge, 1.5),
              _buildFontSizeItem(s.settingsTextScalingHuge, 2.0),
            ],
          ),
        ),
      ),
    );
  }
}
